// Taro 配置文件 - 使用 CommonJS 格式

module.exports = {
  // 项目信息
  projectName: 'jiazhaoyikaotong',
  date: '2025-8-29',
  designWidth: 750,
  deviceRatio: {
    640: 2.34 / 2,
    750: 1,
    375: 2,
    828: 1.81 / 2
  },
  
  // 源码目录配置
  sourceRoot: 'src',
  outputRoot: 'dist',
  
  // 路径别名配置
  alias: {
    '@': 'src'
  },
  
  // 插件配置
  plugins: [
    '@tarojs/plugin-framework-react',
    '@tarojs/plugin-platform-weapp'
  ],
  
  // 全局常量定义
  defineConstants: {
    ENABLE_INNER_HTML: 'true',
    ENABLE_ADJACENT_HTML: 'true',
    ENABLE_SIZE_APIS: 'true',
    ENABLE_TEMPLATE_CONTENT: 'true',
    ENABLE_CLONE_NODE: 'true',
    ENABLE_CONTAINS: 'true',
    ENABLE_MUTATION_OBSERVER: 'true',
  },
  
  // 框架配置
  framework: 'react',
  compiler: 'vite',
  
  // Vite 配置
  vite: {
    css: {
      preprocessorOptions: {
        scss: {
          // 忽略依赖中的警告
          quietDeps: true,
          api: 'modern-compiler',
          // 禁用taro-ui中的警告审计
          additionalData: `$warning-audit: false;`,
          silenceDeprecations: ['legacy-js-api']
        }
      }
    },
    // 路径别名配置
    resolve: {
      alias: {
        '@': 'src'
      }
    },
    // 自定义插件配置
    plugins: [
      require('./plugins/suppressSassWarnings')()
    ],
    // 移除FontAwesome的外部依赖配置，确保它们能被正确打包到小程序中
    build: {
      rollupOptions: {
        external: [],
        input: {
          main: './src/app.tsx',
        }
      }
    }
  },
  
  // 小程序配置
  mini: {
    postcss: {
      pxtransform: {
        enable: true
      }
    },
    copy: {
      patterns: [
      ],
      options: {
        // 配置选项
      }
    },
    // 确保TypeScript文件被正确编译
    typescript: {
      typeCheck: true,
      tsconfigPath: './tsconfig.json'
    }
  },
  
  // H5配置
  h5: {
    publicPath: '/',
    staticDirectory: 'static'
  }
}
